package svc

import (
	"encoding/json"
	"fmt"
	"github.com/shugen/models"
)

func (s *Svc) men_shen_common(ms *models.MenShen) ([]*Desc, error) {

	desc := make([]*Desc, 0)
	rsp, err := s.SelectMenShen(ms)
	if err != nil {
		return desc, err
	}
	err = json.Unmarshal([]byte(rsp.Desc), &desc)
	if err != nil {
		return desc, err
	}
	return desc, nil
}

//门和神的对应关系
func (s *Svc) men_shen(men, shen, sex string) []*Desc {

	result := make([]*Desc, 0)

	//神自身
	switch shen {
	case "1":
		//值符
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 1})
		if err != nil {
			fmt.Println("神位值符error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：性格比较正直，喜欢做领导，有领导才能，有组织领导能力、有影响力、喜欢高尚华贵的东西，关键时刻能处理好危急事物，比较善于帮助别人，同时也自我感觉良好，喜欢掌控操纵、不屈居人下，自我意识强，难以接受指点。")
		//result = append(result, "如果是老板，恭喜你，带着队伍走向光明去吧，如果是员工，那么，我们是不是可以考虑多听听别人的意见，或许是个不错的主义，再说了，将军不都是从当小兵开始的么，加油哦。")
	case "2":
		//腾蛇
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 2})
		if err != nil {
			fmt.Println("神位腾蛇error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：随机应变的能力强，善于躲避，处理事物圆滑多变。做事说话相对“委婉”，行为思想反复，比较令人难以琢磨，有虚诈不实之相。")
		//result = append(result, "嘿嘿，抓到了吧，别躲了，我知道你葫芦里卖什么药呢，做人呢，最主要的是面对自己的真心，别人可能不信，也可以不信别人，但是，总得相信自己吧，只有相信自己有能力更好才能改变任何事物的格局，否则，路越走越黑可不是好事哦~")
	case "3":
		//太阴
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 3})
		if err != nil {
			fmt.Println("神位太阴error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：性情温顺，会照顾人，思想感情细腻，善密谋策划，感情上易暗恋，内心柔软，爱哭，也喜欢暗中行事，表里不一，心性阴暗，但不表于形。")
		//result = append(result, "好吧，总得到贵人相助的人是你，最聪明的人还是你，钻得最深，藏得最严，永远能保持微笑不让别人看破真相，即使所有人都不知道你是笑面虎，但是，咱内心一定要明白，咱微笑是为了不伤害人，咱私底下也可以不为权为利伤害他人，咱就是真汉子。")
	case "4":
		//六合
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 4})
		if err != nil {
			fmt.Println("神位六合error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：个性随和，开放欢乐，人缘佳，喜欢说合之事，具备公关能力和组织能力，与各种人群都能和睦相处，但一定要记得守住自己和别人的小秘密，避免无意的胡乱撮合。")
		//result = append(result, "没错，人缘王就是你，就像个磁铁，总能吸引到关注点，所以，也算是老天给你的一个考验，如果是正能量，吸的就是正能量，如果是负能量，当然吸的就是负能量啦，所以，你的行为心境非常重要呢，好心态自然吸到的全是贵人，让健康长寿，福德具足，财源滚滚~")
	case "5":
		//白虎
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 5})
		if err != nil {
			fmt.Println("神位白虎error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：正直刚正，不惧权威，不弯弯绕绕，喜欢有意见当面摆出来，本领过人、技术能力厉害，但脾气倔强，任性强硬，威权霸道，沟通费劲，是个典型的直脾气。")
		//result = append(result, "吾皇万岁，万岁，万万岁！神马？不是皇上，那一定是老板吧？神马，也不是老板，那大神，不累么，每天把自己搞得这么貌似威严权威的样子真得不累？我知道想要有知心朋友，可是，又担心失尊，这咋跟大家打成一片嘛，对吧。答应我，好好爱自己，其实大家都是自己的王者，大家都想得到的爱，都想给更多的爱，只是没发现而已。")
	case "6":
		//玄武
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 6})
		if err != nil {
			fmt.Println("神位玄武error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：聪明圆滑，巧言善变，神秘不可捉摸，接受能力和领悟能力强，善于找到合适自己的机会去发挥，处理问题有时会虚伪狡猾，会利用小聪明来游说对自己有利的东西，私底下喜暗私情，擅于吹牛。")
		//result = append(result, "好吧，是万金油，为啥这么说呢，就没有搞不定的，没有不知道的，如果有，那一定是遇到了专业大神，能让收起藏不住的尾巴的一定是现实，否则，你的造作永不停止。不过，尽管如此，只要咱思想不滑坡，其实人间就是一个游戏乐园，尽情玩起来又何妨，对吧。")
	case "7":
		//九地
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 7})
		if err != nil {
			fmt.Println("神位九地error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：性情好静，为人稳定厚重，做事低调内向，做事情有比较短期的规划，能稳扎稳打去完成，遇到打击或挫折的时消极被动，缺乏上进心，不能大胆进取，平时也比较节俭，有些小心眼。")
		//result = append(result, "又让我看透的小心思了，掐指一算，内心又积了一个小委屈~其实不是小心眼，只是咱就是一个相对较真的人，心里不服输，但是又无耐，所以急躁中就慌了神。不是咱消极被动，是因为他总是打击咱，让咱真得很不爽，所以，破罐子破摔，不理了，爱咋咋去吧~答应我，从现在开始，如果我们不会说，那我们就写日记，用文字去发泄，用呐喊去出声，只要不伤害他们，摔破枕头又如何，不要再让自己委屈到地底里了，好吗？")
	case "8":
		//九天
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 8})
		if err != nil {
			fmt.Println("神位九天error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：性情好动，志向高远，壮志凌云，积极开拓，做事情有比较长期的规则，眼光长远，不拘于当前的情况，但往往也隐藏着骨子里的个性高调张扬，争强好胜，心性好高骛远，如果不及时向内观自己的心性，容易心高气傲虚幻飘忽，不切实际。")
		//result = append(result, "站得高才能望得远，对，我就稀罕这种有长远规划的人，总能找到一些惊喜让生活充满了希望的激情，但是，我还是希望咱们每一件事都是从低往高走的，只有坚实的基础，我们才能在高楼不为风吹所摆动不安。")
	case "9":
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 9})
		if err != nil {
			fmt.Println("神位1+8error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：志向高远，喜动，正直，有领导才能，眼光长远，关键时刻能处理好危急事物，自我感觉良好，个性高调张扬，喜欢掌控操纵，难以接受指点，一定要时刻提醒自己，避免心高气傲虚幻飘忽，不切实际。")
	case "0":
		//空亡
		rsp, err := s.self_common(&models.Self{Type: "S", PhoneNumber: 0})
		if err != nil {
			fmt.Println("神位空亡error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "内在：六神无主，很多时候因为无法集中精力，不能聚焦带来的选择困难或狂妄，当然，有时候漫无目的游戏人间，也是一种至高的境界，关键还是看是否心存良善而美好幸福的感觉。")
	}

	//神生门(金生水)(men:0,男：休阳水，女：景阳火)
	if (shen == "3" || shen == "5" || shen == "8") && (men == "1" || men == "6") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)

		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")

	}
	if (shen == "3" || shen == "5" || shen == "8") && men == "0" && sex == "male" {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}
	//神生门(水生木)
	if shen == "6" && (men == "3" || men == "8") {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}
	//神生门(木生火)(men:0,男：休阳水，女：景阳火)
	if (shen == "1" || shen == "4") && (men == "4" || men == "9") {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}
	if (shen == "1" || shen == "4") && men == "0" && sex == "female" {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}
	//神生门(火生土)
	if shen == "2" && men == "5" {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}
	//神生门(土生金)
	if shen == "7" && (men == "2" || men == "7") {
		//result = append(result, "在生活、工作中容易能得到长辈上司们的关照、提拔，容易心想事成。")
		rsp, err := s.men_shen_common(&models.MenShen{Type: 0})
		if err != nil {
			fmt.Println("神生门error:", err)
		}
		result = append(result, rsp...)
	}

	//门生神(金生水)
	if (men == "2" || men == "7") && shen == "6" {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)

		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	//门生神(水生木)(men:0,男：休阳水，女：景阳火)
	if (men == "1" || men == "6") && (shen == "1" || shen == "4") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	if men == "0" && sex == "male" && (shen == "1" || shen == "4") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	//门生神(木生火)
	if (men == "3" || men == "8") && shen == "2" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	//门生神(火生土)(men:0,男：休阳水，女：景阳火)
	if (men == "4" || men == "9") && shen == "7" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	if men == "0" && sex == "female" && shen == "7" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}
	//门生神(土生金)
	if men == "5" && (shen == "3" || shen == "5" || shen == "8") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 1})
		if err != nil {
			fmt.Println("门生神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与上司关系比较融洽，因此容易得到比较多的关注，发展比较顺利。")
	}

	//神同门(金)
	if (shen == "3" || shen == "5" || shen == "8") && (men == "2" || men == "7") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	//神同门(木)
	if (shen == "1" || shen == "4") && (men == "3" || men == "8") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	//神同门(水)(men:0,男：休阳水，女：景阳火)
	if shen == "6" && (men == "1" || men == "6") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	if shen == "6" && men == "0" && sex == "male" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	//神同门(火)(men:0,男：休阳水，女：景阳火)
	if shen == "2" && men == "0" && sex == "female" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	if shen == "2" && (men == "4" || men == "9") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}
	//神同门(土)
	if shen == "7" && men == "5" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 2})
		if err != nil {
			fmt.Println("神同门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中与长辈上司们保持同频，容易得到机会，心想事成。")
	}

	//神克门(金克木)
	if (shen == "3" || shen == "5" || shen == "8") && (men == "3" || men == "8") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	//神克门(木克土)
	if (shen == "1" || shen == "4") && men == "5" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	//神克门(土克水)(men:0,男：休阳水，女：景阳火)
	if shen == "7" && (men == "1" || men == "6") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	if shen == "7" && (men == "0" && sex == "male") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	//神克门（水克火）(men:0,男：休阳水，女：景阳火)
	if shen == "6" && (men == "4" || men == "9") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	if shen == "6" && men == "0" && sex == "female" {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}
	//神克门（火克金）
	if shen == "2" && (men == "2" || men == "7") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 3})
		if err != nil {
			fmt.Println("神克门error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中不容易得到长辈上司们的关注，还有可能被挤兑打压，发展艰难，险中求生存。")
	}

	//门克神(金克木)
	if (men == "2" || men == "7") && (shen == "1" || shen == "4") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)

		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	//门克神(木克土)
	if (men == "3" || men == "8") && shen == "7" {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	//门克神(土克水)
	if men == "5" && shen == "6" {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	//门克神(水克火)(men:0,男：休阳水，女：景阳火)
	if (men == "1" || men == "6") && shen == "2" {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	if men == "0" && sex == "male" && shen == "2" {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	//门克神(火克金)(men:0,男：休阳水，女：景阳火)
	if (men == "4" || men == "9") && (shen == "3" || shen == "5" || shen == "8") {

		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}
	if men == "0" && sex == "female" && (shen == "3" || shen == "5" || shen == "8") {
		rsp, err := s.men_shen_common(&models.MenShen{Type: 4})
		if err != nil {
			fmt.Println("门克神error:", err)
		}
		result = append(result, rsp...)
		//result = append(result, "在生活、工作中比较叛逆，不想听长辈上司们的，反抗意识很强，偏要与他们作对，最后处处不顺，伤害的都是自己。")
	}

	return result
}
